11 - Rechnerarchitektur [ID:10865]
50 von 933 angezeigt

So, ja gut, dann können wir starten. Schönen guten Tag, begrüße ich Sie zur ersten Vorlesung

der Rechneraktur im neuen Jahr und wünsche Ihnen natürlich erstmal ein schönes, gutes und vor

allen Dingen erfolgreiches neues Jahr. Vielleicht treffen wir sich ja irgendwann mal demnächst.

So, was sich auf das Erfolgreich bezieht und natürlich das Gut. Ja, die Vorlesung vor

Weihnachten konnte ich leider nicht mehr machen, weil mein ehemaliger Chef, leider aber der ist,

hat ein altes Alter erreicht, der Professor Lohmann gestorben ist und ich war dort auf der

Beerdigung. Der Max hatte die Vorlesung gehalten und da ging es ja nochmal um Cura und was ich

jetzt neu mache dieses Jahr, dass ich mal dieses OpenCL Modell Ihnen vorstellen möchte und dann

ganz kurz auf, deswegen habe ich Ihnen hier auch was mitgebracht, nur zum Zeigen allerdings, ein

bisschen auf Fikernarchitektur und im Bereich Embedded eingehen möchte, nur ganz kurz und das

ist dann auch gleich die Überleitung ins nächste Kapitel und ich habe das jetzt umgestellt gegenüber

den Jahren vorher. Das Kapitel, was die Embedded Prozessoren betrifft, das war in den Jahren vorher

immer das letzte Kapitel, dann hatte ich häufig immer nicht genügend Zeit, dann war das immer ein

bisschen an die Wand gedrängt und letztes Jahr haben mich Studenten gebeten, ob ich das nicht

lieber vorziehen möchte, dann hätte ich da mehr Zeit und das Kapitel über parallel Rechnerarchitekturen,

MPI und so weiter, das ist dann nach hinten gewandert. Gut, also dann fangen wir mal an. Dieses

OpenCL, hat schon mal jemand was mit OpenCL gemacht? Ja klar, genau, sonst noch nicht. Also

ich erwarte jetzt nicht und ich erwarte das auch nicht von Ihnen, dass Sie jetzt nach dieser Vorlesung

dann rausgehen und international gesuchte OpenCL Experten sind. Mir geht es jetzt darum, dass ich

Sie dafür sensibilisiere und wahrscheinlich hatten die meisten von Ihnen jetzt auch vor Weihnachten

zum ersten Mal was von CUDA gehört, kann das so sein, dass Sie vorher mit CUDA schon mal ein bisschen

was zu tun hatten? Sie haben schon mit CUDA gemacht und Sie werden jetzt viele Parallelen bei dem

OpenCL sehen und das OpenCL ist noch ein bisschen ein allgemeinerer Ansatz, aber viele der Ideen,

ja also ich würde fast sagen jetzt mal grob geschätzt, um mich darauf festnageln zu lassen,

60 bis 70 Prozent der Ideen, die in OpenCL vorkommen, finden Sie in CUDA wieder. Man könnte

vielleicht sogar sagen, ja es waren ja auch viele Entwickler, die an CUDA beteiligt waren,

Nvidia hat sich ja auch engagiert, die waren dann auch bei dem Standard, quasi Standard,

der bei OpenCL versucht wird zu arbeiten, mit dabei. Also eigentlich eine schöne Folie,

aber die habe ich jetzt nicht mehr geschafft damit einzubauen, da stand eben drauf, it's a

heterogeneous world, was wir mittlerweile haben, also es ist eine heterogene Welt hinsichtlich der

Prozessorarchitektur. Wir haben ASOV, wir haben GPUs, wir haben die normale CPU, wir hatten in der

Vergangenheit den Zellprozessor und wir haben, was sich hier unten drunter versteckt, ein Arm

Prozessor, die auch immer wichtiger werden und ja wir haben auch die FPGAs, der ist jetzt hier

nicht drauf, da kommen wir dann im nächsten Kapitel dazu. Und was man natürlich jetzt gerne

hätte, alle diese verschiedenen Architekturen haben sowohl ihre Berechtigung, dass es nicht so,

dass da irgendwas unnütz ist, die einen FPGA sind vielleicht jetzt nicht so schnell wie die GPUs,

dafür sind sie, was den Energiebedarf, die Energieeffizienz ausgedrückt in Gigaflow pro

aufgewandtes Watt betrifft unschlagbar. Da ist der FPGA, da kommt die GPU nie ran, würde ich mal

sagen, so ohne weiteres. Und ja, was hätte man natürlich jetzt, jetzt hatten wir also diese

verschiedenen Architekturen und man hätte den Wunsch, obwohl sie heterogen unterschiedlich sind,

die alle mit einer Programmiersprache programmieren zu können oder zumindest da so eine Idee zu haben,

wie man mit einem Modell all diese unterschiedlichen Architekturen in den Griff bekommt. Und das ist

der Ansatz von OpenCL, ursprünglich von Apple gegründet und AMD hat sich vor allen Dingen stark

engagiert, Nvidia hat sich nach das Wissen so ein bisschen daraus zurückgezogen und was jetzt aber

in den letzten Jahren vor allen Dingen passiert ist, dass man OpenCL versucht für diese Empathet

Devices da zu erschließen. So ein OpenCL Programm, also OpenCL steht für Open Computing

Language, es sind zwei Abschnitte aufgeteilt. Ein Abschnitt wird auf dem sogenannten Device

ausgeführt, das ist dann also mein Beschleuniger, das kann der GPU sein, ein FPGA oder auch ein

digitaler Signalprozessor und der andere Abschnitt wird auf dem Host ausgeführt und das ist in der

Regel die CPU. Also ich habe mir auch bei Max mitbekommen, dass die GPU für sich alleine eigentlich

Teil einer Videoserie :

Zugänglich über

Offener Zugang

Dauer

01:29:10 Min

Aufnahmedatum

2013-01-09

Hochgeladen am

2019-04-30 04:49:03

Sprache

de-DE

Die Vorlesung baut auf die in den Grundlagen der Rechnerarchitektur und -organisation vermittelten Inhalte auf und setzt diese mit weiterführenden Themen fort. Es werden zunächst grundlegende fortgeschrittene Techniken bei Pipelineverarbeitung und Cachezugriffen in modernen Prozessoren und Parallelrechnern behandelt. Ferner wird die Architektur von Spezialprozessoren, z.B. DSPs und Embedded Prozessoren behandelt. Es wird aufgezeigt, wie diese Techniken in konkreten Architekturen (Intel Nehalem, GPGPU, Cell BE, TMS320 DSP, Embedded Prozessor ZPU) verwendet werden. Zur Vorlesung werden eine Tafel- und eine Rechnerübung angeboten, durch deren erfolgreiche Beteiligung abgestuft mit der Vorlesung 5 bzw. 7,5 ECTS erworben werden können. In den Tafelübungen werden die in der Vorlesung vermittelten Techniken durch zu lösende Aufgaben vertieft. In der Rechnerübung soll u.a. ein einfacher Vielkern-Prozessor auf Basis des ZPU-Prozessors mit Simulationswerkzeugen aufgebaut werden. Im Einzelnen werden folgende Themen behandelt:
  • Organisationsaspekte von CISC und RISC-Prozessoren

  • Behandlung von Hazards in Pipelines

  • Fortgeschrittene Techniken der dynamischen Sprungvorhersage

  • Fortgeschritten Cachetechniken, Cache-Kohärenz

  • Ausnutzen von Cacheeffekten

  • Architekturen von Digitalen Signalprozessoren

  • Architekturen homogener und heterogener Multikern-Prozessoren (Intel Corei7, Nvidia GPUs, Cell BE)

  • Architektur von Parallelrechnern (Clusterrechner, Superrechner)

  • Effiziente Hardware-nahe Programmierung von Mulitkern-Prozessoren (OpenMP, SSE, CUDA, OpenCL)

  • Leistungsmodellierung und -analyse von Multikern-Prozessoren (Roofline-Modell)

Empfohlene Literatur
  • Patterson/Hennessy: Computer Organization und Design
  • Hennessy/Patterson: Computer Architecture - A Quantitative Approach

  • Stallings: Computer Organization and Architecture

  • Märtin: Rechnerarchitekturen

Einbetten
Wordpress FAU Plugin
iFrame
Teilen